package com.example.automanagement.service;

import com.example.automanagement.dto.UserDto;
import com.example.automanagement.entity.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserService {
    User userLogin(String userId, String userPassword);

    void addUser(User user);

    void addUserRole(List<UserRole> userRoleList);

    void userUpdateInformation(User user);

    void userUpdatePassword(String userId,String oldPassword,String newPassword);

    void adminUpdateUser(User user);

    void deleteUser(String userId);

    void deleteUserRole(String userId);

    List<UserRole> getUserRole(String userId);

    List<RoleBusinessMenu> getRoleBusiness(String userRole);

    List<Role> getAllRoles();

    List<RoleBusinessMenu> getOtherMenus(String userRole);

    void addRoleMenu(List<RoleBusiness> roleBusinessMenuList);

    void addRole(String roleName);

    void deleteRole(String roleName);

    void deleteRoleMenu(String userRole, int businessId);

    List<UserDto> getAllUser();

    List<String> getAllDepartment();

    List<String> getAllPosition();
    List<User>getUserInfoById(String userId);

    User getUserById(String userId);
}
